![]() 用於i/o流量的同調性開關
专利摘要:
一種用於在一系統單晶片(SoC)中將流量自I/O器件路由至記憶體之系統、裝置及方法。一同調性開關經由一處理器複合體上之一同調性埠將同調流量路由至一記憶體控制器之一即時埠。該同調性開關將非同調流量路由至該記憶體控制器之一非即時埠。該同調性開關亦可動態地在兩個路徑之間切換流量。流量之該路由可經由一組態暫存器組態,且雖然軟體可起始對該組態暫存器之一更新,但實際同調性開關硬體將實施該更新。軟體可寫入至該組態暫存器之一軟體可寫入複本以起始對針對一異動識別符之至記憶體的流程路徑之一更新。該同調性開關偵測對該軟體可寫入複本之該更新,且接著該同調性開關更新該組態暫存器之工作複本且實施新的路由。 公开号:TW201320098A 申请号:TW101132820 申请日:2012-09-07 公开日:2013-05-16 发明作者:Timothy J Millet;Muditha Kanchana;Shailendra S Desai 申请人:Apple Inc; IPC主号:G06F13-00
专利说明:
用於I/O流量的同調性開關 本發明大體係關於系統單晶片,且詳言之,係關於用於在一系統單晶片中路由異動之方法及機構。 系統單晶片(SoC)的複雜性及大小歸因於電子工業中之不斷技術進展而增大。常見SoC可包括連接至含有一或多個處理器之處理器複合體的多個輸入/輸出(I/O)器件。處理器複合體通常可包括一或多個處理器及一或多個快取記憶體,且處理器複合體可耦接至記憶體控制器之CPU埠,處理器複合體可經由該CPU埠存取記憶體。I/O器件可耦接至處理器複合體上之同調性埠,且經由記憶體控制器之CPU埠存取記憶體。 來自I/O器件的流量之一部分可為快取同調的。來自I/O器件的流量之另一部分可為低效能異動,且低效能異動中之一些可經指引至不可共用記憶體。通常,針對快取同調性檢查每一異動之成本就硬體、效能及功率而言為高的。另外,來自I/O器件之流量可與處理器複合體競爭在記憶體控制器上之CPU埠上的記憶體頻寬。此外,來自I/O器件之流量亦可不必要地使窺探活動在處理器複合體中發生。 在一實施例中,一種裝置可包括一或多個處理器、一記憶體控制器、一或多個I/O器件及一同調性開關。該一或多個處理器可位於一處理器複合體中,且該處理器複合體可耦接至該記憶體控制器之一即時埠。該處理器複合體可包括一或多個快取記憶體層級,且該處理器複合體亦可包括耦接至該同調性開關之一同調性埠。該同調性開關可耦接至該一或多個I/O器件,耦接至該處理器複合體,且耦接至該記憶體控制器。在一些實施例中,該裝置可包括一非即時(NRT)區塊,且該同調性開關可經由該NRT區塊耦接至該記憶體控制器。該裝置亦可包括一多工器,且該同調性開關可經由該多工器耦接至該一或多個I/O器件。 該同調性開關可自該(等)I/O器件接收異動,且該同調性開關可在該裝置內之兩個單獨路徑上將所接收異動路由至該記憶體控制器。第一路徑可穿過該處理器複合體上之一同調性埠且穿過該記憶體控制器之一第一埠。可經由該第一路徑將來自已知為同調之源的流量路由至記憶體。一第二路徑可穿過一NRT區塊且穿過該記憶體控制器之一第二埠。可經由該第二路徑將來自已知為非同調之源的流量路由至記憶體。已知為非同調之該等源可產生存取僅不可共用記憶體之異動。在一實施例中,該同調性開關可基於伴隨該異動之一識別符判定哪一路徑路由一異動。 在各種實施例中,該同調性開關可經組態以動態地將流量自同調路徑重新分配至非同調路徑或自非同調路徑重新分配至同調路徑。該同調性開關可維持一組態暫存器,且該組態暫存器可針對每一異動識別符儲存一指示符。該指示符可指定是應經由該同調路徑或是該非同調路徑將該對應的異動路由至記憶體。在一實施例中,該同調性開關可維持該組態暫存器之兩個複本。該組態暫存器之第一複本可為一軟體可寫入複本且該組態暫存器之第二複本可為一工作複本。該工作複本亦可被稱作一陰影複本。 具有該組態暫存器之兩個複本可有助於流量之動態切換。舉例而言,該組態暫存器之該兩個複本可允許軟體起始對該組態暫存器之一改變,而同調性開關硬體可控制對系統行為之實際改變。具體言之,一軟體應用程式可更新該組態暫存器之該軟體可寫入複本以基於一異動識別符重新分配流量流。該同調性開關可偵測對該軟體可寫入複本之該更新,且接著該同調性開關可更新用以實際實施新的路由之該工作複本。 鑒於本文中所呈現之方法的以下詳細描述,此等及其他特徵及優點將對於一般熟習此項技術者而言變得顯而易見。 方法及機構之以上及另外優點可藉由參考結合隨附圖式之以下描述而更好地理解。 在以下描述中,闡述眾多特定細節以提供對本文中所呈現之方法及機構的透徹理解。然而,一般熟習此項技術者應認識到,可在無此等特定細節的情況下實踐各種實施例。在一些情況下,尚未詳細展示熟知結構、組件、信號、電腦程式指令及技術以避免與本文中所描述之方法混淆。應瞭解,為說明之簡單及清晰起見,諸圖中所展示之元件未必係按比例繪製。舉例而言,元件中之一些的尺寸可相對於其他元件誇大了。 此說明書包括對「一實施例」之參考。片語「在一實施例中」之出現在不同上下文中未必指同一實施例。可以與本發明相一致之任何合適方式來組合特定特徵、結構或特性。此外,如遍及本申請案所使用,詞「可」係按准許之意義(亦即,意謂有可能)而非強制性之意義(亦即,意謂必須)來使用。類似地,詞「包括」意謂包括但不限於。 術語。以下段落為本發明中(包括附加申請專利範圍)所見之術語提供定義及/或上下文:「包含」。此術語為開放式。於附加申請專利範圍中使用時,此術語並不排除額外結構或步驟。考慮一技術方案,其敍述:「一種處理器,其包含一快取記憶體......」。此技術方案不排除該處理器包括額外組件(例如,網路介面、縱橫體)。 「經組態以」。可將各種單元、電路或其他組件描述或主張為「經組態以」執行一或多個任務。在此等上下文中,「經組態以」用以藉由指示單元/電路/組件包括在操作期間執行該或該等任務之結構(例如,電路)而暗示結構。因而,可稱單元/電路/組件經組態以執行任務,甚至在所指定之單元/電路/組件當前並不操作(例如,未接通)時。與「經組態以」之語言一起使用的單元/電路/組件包括硬體,例如,電路、儲存可執行以實施操作之程式指令的記憶體等。敍述一單元/電路/組件「經組態以」執行一或多個任務明確地意欲不針對彼單元/電路/組件援引35 U.S.C.§ 112第六段。另外,「經組態以」可包括由軟體及/或韌體(例如,FPGA或執行軟體之通用處理器)操縱以便以能夠執行討論中之任務的方式操作的一般結構(例如,一般電路)。「經組態以」亦可包括調適製造過程(例如,半導體製造設施)以製造經調適以實施或執行一或多個任務之器件(例如,積體電路)。 「第一」、「第二」等。如本文中所使用,此等術語用作其後跟著的名詞之標籤,且不暗示任何類型之排序(例如,空間上、時間上、邏輯上),除非如此明確地定義。舉例而言,在具有五個埠之記憶體控制器中,術語「第一」及「第一」埠可用以指代五個埠中之任何兩個埠。 「基於」。如本文中使用時,此術語用以描述影響判定之一或多個因素。此術語不排除可影響判定之額外因素。亦即,判定可僅僅基於彼等因素或至少部分地基於彼等因素。考慮片語「基於B來判定A」。雖然B可為影響A之判定之一因素,但此片語並不排除A之判定亦基於C。在其他情況下,可僅僅基於B來判定A。 現參看圖1,展示說明積體電路(IC)之一部分之一實施例之方塊圖。在所說明之實施例中,IC 10包括同調性開關12、多工器14、直接記憶體存取(DMA)控制器15、I/O器件16、18及20、處理器複合體22、非即時(NRT)區塊26、記憶體控制器30及記憶體實體介面電路(PHY)38及40。應注意,IC 10亦可包括圖1中未展示之許多其他組件及連接件。在各種實施例中,IC 10亦可被稱作系統單晶片(SoC),被稱作特殊應用積體電路(ASIC),或被稱作裝置。 在IC 10內展示之組件可使用任何合適的匯流排及/或介面機構相互耦接。在一些實施例中,此等組件可使用進階微控制器匯流排架構(AMBA®)協定(來自ARM® Holdings)或用於邏輯區塊之連接及管理的任何其他合適之晶片上互連規範來連接。AMBA匯流排及/或介面之實例可包括進階可擴展介面(AXI)、進階高效能匯流排(AHB)、進階系統匯流排(ASB)、進階周邊匯流排(APB)及進階追蹤匯流排(ATB)。 IC 10包括同調性開關12,且同調性開關12可為軟體可動態組態之可程式化開關。如圖1中所展示,同調性開關12經由NRT區塊26耦接至記憶體控制器30之埠36。在一實施例中,同調性開關12與NRT區塊26之間的連接可為AXI介面。在另一實施例中,同調性開關12可直接耦接至埠36。在再一實施例中,同調性開關12可經由另一區塊或組件耦接至埠36。同調性開關12亦經由處理器複合體22之進階同調性埠(ACP)24耦接至記憶體控制器30之埠32。在一實施例中,同調性開關12可利用AXI主控介面經由ACP 24連接至處理器複合體22之同調性域。在一些實施例中,同調性開關12可為I/O同調性橋接器(未圖示)或類似者之部分。 同調性開關12亦耦接至多工器14,且多工器14耦接至DMA控制器15及I/O器件16及20。多工器14亦經由DMA控制器15耦接至I/O器件18。多工器14可包括用於緩衝來自I/O器件16至20及/或DMA控制器15之資料的一或多個緩衝器。在一實施例中,多工器14可為來自ARM Holdings之PL301高效能矩陣。I/O器件16至20表示任何數目個I/O器件,且各種I/O器件可以多種方式(諸如,直接、經由DMA控制器15及/或經由另一器件)耦接至多工器14。I/O器件16至20與多工器14之間的連接之類型之變化為可能的且被預料到。在其他實施例中,多工器14可耦接至I/O處理器、周邊I/O佇列及/或圖1中未展示之一或多個其他器件。 同調性開關12可自I/O器件16至20接收異動且可將異動傳送至處理器複合體22或NRT區塊26。在一些實施例中,回應於接收異動,同調性開關12可將對應的記憶體請求發出至處理器複合體22或NRT區塊26。一般而言,異動可包含記憶體請求,且術語「記憶體請求」不限於最終藉由記憶體回應之請求,且亦可包括由快取記憶體滿足之請求。應注意,術語「記憶體請求」、「異動」及「記憶體操作」可遍及本發明可互換地使用。 儘管在圖1中未展示,但處理器複合體22可包括一或多個處理器、快取記憶體、快取控制器、控制單元及各種其他數目個其他元件及邏輯組件。在一些實施例中,處理器中之每一者可具有其自身的快取記憶體(例如,L1快取記憶體)。處理器複合體22可使I/O器件16至20能夠存取系統記憶體,同時維持快取記憶體與系統記憶體之間的同調性。I/O器件16至20可包括經組態以或能夠與處理器複合體22及/或系統記憶體(未圖示)互動之任何器件。I/O器件16至20之實例包括音訊控制器、視訊或圖形控制器、通用串列匯流排(USB)控制器、介面控制器、諸如乙太網路媒體存取控制器(MAC)或WiFi(IEEE 802.11)控制器之網路連接MAC及各種其他器件。應注意,I/O器件16至20亦可被稱作周邊器件或I/O周邊裝置。 記憶體控制器30包括埠32、34及36,其表示任何數目個埠。埠32可耦接至處理器複合體22。在一實施例中,埠32可經指定以接收即時(RT)記憶體請求。埠36可耦接至NRT區塊26。在一實施例中,埠36可經指定以接收NRT記憶體請求。一般而言,NRT記憶體請求可由記憶體控制器30作為低於RT記憶體請求之優先權來對待。埠34可耦接至IC 10之另一區塊(未圖示)。舉例而言,在一實施例中,埠34可耦接至RT周邊區塊。在另一實施例中,埠34可耦接至圖形控制器。 記憶體控制器30可包括經組態以介面連接至記憶體之電路(未圖示)。舉例而言,記憶體控制器30可經組態以介面連接至動態隨機存取記憶體(DRAM),諸如,同步DRAM(SDRAM)、雙資料速率(DDR)SDRAM、DDR2 SDRAM、Rambus DRAM(RDRAM)等。記憶體控制器30亦可耦接至記憶體實體介面電路(PHY)38及40。記憶體PHY 38及40表示可耦接至記憶體控制器30之任何數目個記憶體PHY。記憶體PHY 38及40可經組態以介面連接至記憶體。記憶體控制器30可自處理器複合體33、NRT區塊26及其他區塊(未圖示)接收記憶體請求,且記憶體控制器30可執行對記憶體之對應的讀取及寫入操作。 同調性開關12可使用多種方法判定自I/O器件接收(經由多工器14)之異動為快取同調異動抑或為非快取同調異動。遍及本發明,快取同調異動可被稱作「同調異動」或「同調記憶體請求」,且非快取同調異動可被稱作「非同調異動」或「非同調記憶體請求」。一般而言,非同調異動可對應於未對照快取記憶體檢查之記憶體操作。在一實施例中,同調性開關12可基於接收異動所來自之I/O器件判定異動為同調的抑或為非同調的。I/O器件16至20之第一部分可經指定為同調器件,且I/O器件16至20之第二部分可經指定為非同調器件。在另一實施例中,同調性開關12可基於異動識別符判定異動為同調的抑或非同調的。可對每一I/O器件指派異動識別符之範圍,且識別符可經指定以用作同調或非同調異動。 在各種實施例中,I/O器件16至20可經由多工器14、同調性開關12且接著經由處理器複合體22或NRT區塊26存取記憶體。舉例而言,發端I/O器件可將讀取或寫入請求發出至記憶體。請求可穿過多工器14,且接著同調性開關12可接收請求且判定應將請求路由至處理器複合體22(針對同調請求)或是路由至NRT區塊26(針對非同調請求)。對於同調流量,處理器複合體22可提供用以窺探快取記憶體之機構。若存在快取命中,則處理器複合體22可將回應提供至同調性開關12。若存在快取未中,則處理器複合體22可將請求轉遞至記憶體。對於非同調流量,同調性開關12可將請求轉遞至NRT區塊26且接著NRT區塊26可將請求轉遞至記憶體(經由記憶體控制器30)。 應注意,其他實施例可包括組件之其他組合,其包括圖1中所展示之組件及/或其他組件之子集或超集。雖然圖1中可展示給定組件之一例項,但其他實施例可包括該給定組件之一或多個例項。類似地,遍及此詳細描述,即使僅展示一例項,但可包括給定組件之一或多個例項,及/或即使展示多個例項,但可使用僅包括一例項之實施例。 現轉至圖2,展示同調性開關12之操作之一實施例之方塊圖。在一實施例中,多工器14可將流量耦接至同調性開關12。如圖2中所展示,同調異動由大寫字母「C」指示,其中下標識別不同同調異動。舉例而言,C1可為由同調性開關12接收之第一同調請求,C2可在C1之後接收,等等。非同調異動由大寫字母「NC」指示,其中下標識別不同非同調請求。在一些實施例中,可使異動分解成封包,且圖2中之區塊可表示異動或封包。 同調性開關12可自多工器14接收異動,且可混合同調與非同調異動。如圖2中所展示,異動可按以下次序到達於同調性開關12處:C1、C2、NC1、C3、NC2。在一實施例中,同調性開關12可基於伴隨異動之識別符將異動識別為同調的或非同調的。同調性開關12可將同調異動(C1、C2及C3)路由至處理器複合體22。同調性開關12可將非同調異動(NC1及NC2)路由至NRT區塊26。以類似方式(在圖2中未展示),經由處理器複合體22及NRT區塊26自記憶體傳回之流量可在同調性開關12中交錯,且在傳回流量傳回至發端I/O器件時在單一路徑上傳送回至多工器14。 現參看圖3,展示同調性開關之一實施例之方塊圖。組態單元50可耦接至出埠多工器52及入埠多工器54。在各種實施例中,單元50可將異動識別符、就緒信號、有效信號及/或其他組態及控制信號發送至出埠多工器52及入埠多工器54。 ACP佇列56可儲存自出埠多工器52耦接之同調異動,且接著ACP佇列56可將同調異動傳送至處理器複合體(未圖示)之ACP。類似地,NRT佇列58可儲存自出埠多工器52耦接之非同調異動,且接著NRT佇列58可將同調異動傳送至NRT區塊(未圖示)。ACP佇列60可儲存自處理器複合體耦接之同調異動傳回資料,且接著ACP佇列60可將傳回資料傳送至入埠多工器54。類似地,NRT佇列62可儲存自NRT區塊耦接之非同調異動傳回資料,且接著NRT佇列62可將傳回資料傳送至入埠多工器54。儘管在圖3中未展示,但多工器52之輸入及輸出介面可包括用於與上游寫入異動相關聯之位址及資料之單獨頻道。 在一實施例中,入埠多工器54可在至I/O器件之傳回路徑上混合與同調及非同調異動相關聯的資料。入埠多工器54可按自ACP佇列60及NRT佇列62接收資料之次序混合與同調及非同調異動相關聯的資料。在各種實施例中,佇列56至62可為用以儲存任何數目個異動或與異動相關聯的任何量之傳回資料之各種大小中任一者。 在一實施例中,組態單元50可經由進階周邊匯流排(APB)介面或類似者存取。舉例而言,在外部器件或處理器(未圖示)上執行之軟體應用程式可利用APB介面64以用於程式化或組態組態單元50。APB介面64可獨立於穿過同調性開關12之異動及資料。 現轉至圖4,展示根據一或多個實施例的耦接至同調性開關之組態單元的介面之方塊圖。可利用APB介面64以用於寫入至軟體可寫入暫存器72以更新一或多個異動識別符之值。軟體可寫入暫存器72可包括針對每一異動識別符之指示符。在一實施例中,每一異動識別符可為9位元長,且對於每一可能識別符值,軟體可寫入暫存器72可具有總共512個項。在其他實施例中,異動識別符可具有不同位元長度。亦可以類似於軟體可寫入暫存器72之方式組織陰影暫存器74。應注意,陰影暫存器74亦可被稱作組態暫存器之陰影複本或被稱作組態暫存器之工作複本。 在一實施例中,回應於系統或軟體重設,暫存器72及74中之所有值可設定為0,其中值0對應於同調路徑。作為重設之結果,暫存器72及74之值中之每一者可指示應針對每一異動識別符採用同調路徑。此可為針對每一異動識別符之預設設定。應注意,在其他實施例中,暫存器72及74中之值1可對應於同調路徑,且0可對應於非同調路徑。 在一實施例中,CPU 76或78可經由APB介面64寫入至軟體可寫入暫存器72以改變針對經指派至一或多個I/O器件之異動識別符的路由設定。在另一實施例中,I/O處理器80可經由APB介面64寫入至軟體可寫入暫存器72以改變針對各種異動識別符之路由設定。在再一實施例中,另一器件(未圖示)可經由APB介面64寫入至軟體可寫入暫存器72以改變針對一或多個異動識別符之路由設定。如圖4中所展示,三個器件(CPU 76及78及處理器80)耦接至APB介面64。然而,在其他實施例中,其他數目個器件可耦接至APB介面64。 在一實施例中,在偵測到對軟體可寫入暫存器72之改變後,同調性開關12可停止自(圖1之)I/O器件16至20接受新的異動。同調性開關12可處理所有擱置中異動,更新陰影暫存器74以反映對軟體可寫入暫存器72進行之改變,且接著同調性開關12可開始自I/O器件16至20接受新的異動。 組態單元50可經由使用一或多個計數器(未圖示)保持追蹤未處理異動。在一實施例中,組態單元50可利用第一計數器來維持未處理寫入異動之計數,且組態單元50可利用第二計數器來維持未處理讀取異動之計數。在偵測到對軟體可寫入暫存器72之更新時,組態單元50可停止接受新的異動,直至已處理所有未處理寫入異動。組態單元50可利用第一計數器來判定何時已處理所有寫入異動。軟體可寫入暫存器72中之路由指示符可不影響讀取異動之傳回路徑,且因此在一些實施例中,可不監視未處理讀取異動之數目。在另一實施例中,組態單元50可針對未處理同調寫入異動之數目且針對未處理非同調寫入異動之數目維持單獨計數器。 在一實施例中,同調性開關可包括具有用於寫入異動之單獨位址及資料匯流排的分裂匯流排架構。在此實施例中,組態單元50可利用計數器來偵測是否存在任何擱置中寫入異動。在一實施例中,計數器可經初始化為表示無異動擱置中之狀態的特定值。舉例而言,對於在0至255之間計數的8位元計數器,計數器之特定(初始)值可設定為128。計數器可在接收異動之位址部分時遞增,且增量可與資料之量成正比,該資料量與異動相關聯。此外,計數器可每當接收寫入資料差拍(beat)時遞減。在計數器等於其初始(特定)值時,此將指示未處理寫入異動之所有位址及資料已由同調性開關接收且無寫入異動未處理。另外,在計數器回至其初始值時,組態單元50接著可在已偵測到對軟體可寫入複本之改變後基於對軟體可寫入複本的更新來更新組態暫存器之陰影複本。 現返回至圖5,展示組態暫存器之陰影複本之一實施例。陰影暫存器74展示於圖5中,且可以類似於陰影暫存器74之方式配置(圖4之)軟體可寫入暫存器72。陰影暫存器74可儲存針對每一位址之路由指示符,且路由指示符可為單一位元(亦即,0或1)。舉例而言,在一實施例中,路由指示符「0」可指定針對特定位址之同調路徑,且路由指示符「1」可指定非同調路徑。又,在一實施例中,位址可為伴隨異動之9位元識別符。在另一實施例中,異動識別符可映射至用以存取陰影暫存器74中之位址項的值。路由指示符可指示由位址值表示之對應的異動識別符為同調異動或是非同調異動。在其他實施例中,路由指示符可為布林(Boolean)值(亦即,真或假),可用一個以上單一位元來表示,或可由各種其他值或名稱來表示。 在另一實施例中,陰影暫存器74可分裂成多個暫存器,其中每一暫存器對應於為總位址範圍之一部分的位址範圍。陰影暫存器74在圖5中展示為含有512個項,但此僅出於說明之目的。應注意,在其他實施例中,陰影暫存器74可包括其他數目個位址項。應進一步注意,在其他實施例中,陰影暫存器74可包括其他資訊且可以任何合適方式組織。舉例而言,在另一實施例中,陰影暫存器74中之每一項可包括一有效欄位以指示特定位址或識別符是當前被使用或是「在工作中」(亦即,具有未處理異動)。 在各種實施例中,可對每一I/O器件指派待用於異動之位址的範圍。舉例而言,一I/O器件可經針對其異動指派位址0至15,另一I/O器件可經指派位址16至23,等等。在一些實施例中,每一I/O器件可經指派為同調異動之源或非同調異動之源。在其他實施例中,個別I/O器件可為同調異動及非同調異動兩者之源。 在另外實施例中,可將一特定異動識別符或位址指定為同調異動。I/O器件可利用針對同調異動之特定異動識別符,且接著在未來的某個時候,I/O器件可決定使用針對非同調異動之特定異動識別符。I/O器件可更新組態暫存器之軟體可寫入複本以改變針對特定異動之路由識別符,且接著在一實施例中,I/O器件可在發送非同調異動前將屏障指令發送至同調性開關。屏障指令可允許同調性開關時間更新組態暫存器之陰影複本以匹配軟體可寫入複本。屏障指令亦可充當對同調性開關之通知--已發生對組態暫存器之陰影複本的更新。 在又一實施例中,對組態暫存器之軟體可寫入複本的更新可在同調性開關已接收特定異動之僅位址部分後發生。在此狀況下,同調性開關可不更新組態暫存器之陰影複本,直至針對此特定異動已接收到來自相關資料流量之所有差拍。同調性開關可利用先前描述之計數器機構來判定何時不存在異動未處理。 現轉至圖6,展示用於路由異動且操作同調性開關的方法之一實施例。出於論述之目的,按順序次序展示此實施例中之步驟。應注意,在以下所描述方法之各種實施例中,可以不同於所展示之次序、同時執行所描述要素中之一或多者,或可將其完全省略。在需要時,亦可執行其它額外要素。 在一實施例中,可在同調性開關處接收包括第一及第二異動之複數個異動(區塊90)。異動可由一或多個I/O器件產生。I/O器件可經由多工器、DMA控制器及/或其他器件耦接至同調性開關。第一及第二異動可分別伴有第一及第二識別符。在接收到第一及第二異動後,同調性開關可存取組態暫存器中之第一及第二路由指示符(區塊92)。在一實施例中,同調性開關可分別利用第一及第二識別符作為至組態暫存器之索引或位址以存取第一及第二路由指示符。 同調性開關可回應於判定第一路由指示符具有第一值而在第一路徑上路由第一異動(區塊94)。在一實施例中,第一值可為指示第一異動為同調請求之「0」。第一路徑可自同調性開關行進至處理器複合體之ACP。同調性開關可回應於判定第二路由指示符具有第二值而在第二路徑上路由第二異動(區塊96)。在一實施例中,第二值可為指示第二異動為非同調請求之「1」。第二路徑可自同調性開關行進至非即時(NRT)區塊且接著行進至記憶體控制器之NRT埠。 現轉至圖7,展示用於更新同調性開關之組態暫存器的方法之一實施例。出於論述之目的,按順序次序展示此實施例中之步驟。應注意,在以下所描述方法之各種實施例中,可以不同於所展示之次序、同時執行所描述要素中之一或多者,或可將其完全省略。在需要時,亦可執行其它額外要素。 同調性開關可經組態以偵測對組態暫存器之軟體可寫入複本的更新(區塊100)。接著,在偵測到更新後,同調性開關可停止自所連接之I/O器件接受新的異動(區塊102)。接下來,同調性開關可判定是否存在仍在工作中之任何未處理異動(條件區塊104)。在一實施例中,同調性開關可利用諸如上文所論述之計數器機構的計數器機構來判定是否存在任何未處理異動。如先前所描述,若計數器等於預定值,則此可指示已處理所有擱置中異動。在其他實施例中,同調性開關可利用其它機構來判定是否存在需要完成之任何未處理異動。 若不存在仍在工作中之任何未處理異動(條件區塊104),則同調性開關可更新組態暫存器之陰影複本(區塊106)。若同調性開關判定存在仍在工作中之未處理異動(條件區塊104),則同調性開關可等待,直至在更新陰影複本前完成所有未處理異動。在區塊106後,同調性開關可開始接受新的異動(區塊108)。接著,同調性開關可接收新的異動(區塊110)。同調性開關可基於組態暫存器之經更新陰影複本路由新的異動(區塊112)。在一實施例中,異動可包括識別符,且同調性開關可在組態暫存器之陰影複本中查找識別符以找到對應的路由指示符。 現參看圖8,展示系統120之一實施例之方塊圖。在所說明實施例中,系統120包括耦接至記憶體122之積體電路10之至少一例項。積體電路10耦接至一或多個周邊裝置124及記憶體122。亦提供電源供應器126,其將供電電壓以及一或多個供電電壓供應至積體電路10、記憶體122及/或周邊裝置124。在其他實施例中,可提供一個以上電源供應器126。在一些實施例中,可包括積體電路10之一個以上例項(且亦可包括一個以上記憶體122)。 記憶體122可為任一類型之記憶體,諸如動態隨機存取記憶體(DRAM)、同步DRAM(SDRAM)、雙資料速率(DDR、DDR2、DDR3等)SDRAM(包括諸如mDDR3等之SDRAM之行動版本及/或諸如LPDDR2等之SDRAM的低功率版本)、RAMBUS DRAM(RDRAM)、靜態RAM(SRAM)等。一或多個記憶體器件可耦接至電路板上以形成記憶體模組,諸如,單直插記憶體模組(SIMM)、雙直插記憶體模組(DIMM)等。 取決於系統120之類型,周邊裝置124可包括任何所要的電路。舉例而言,在一實施例中,系統120可為行動器件(例如,個人數位助理(PDA)、智慧型手機、電子閱讀器件),且周邊裝置124可包括用於各種類型之無線通信(諸如,Wi-Fi、藍芽、蜂巢式、全球定位系統等)之器件。周邊裝置124亦可包括額外儲存器,額外儲存器包括RAM儲存器、固態儲存器或碟儲存器。周邊裝置124可包括使用者介面器件,諸如,顯示螢幕(包括觸控顯示螢幕或多點觸控顯示螢幕)、鍵盤或其他輸入器件、麥克風、揚聲器等。在其他實施例中,系統120可為任一類型之計算系統(例如,桌上型個人電腦、膝上型電腦、工作站、視訊遊戲主控台、電視、桌上型易網機(nettop))。 現轉至圖9,展示電腦可讀媒體130之方塊圖之一實施例,電腦可讀媒體130包括表示包括於(圖1之)積體電路(IC)10中的電路之一或多個資料結構。一般而言,電腦可讀媒體130可包括任何非暫時性儲存媒體,諸如,磁性或光學媒體(例如,磁碟、CD-ROM或DVD-ROM)、諸如RAM(例如,SDRAM、RDRAM、SRAM等)之揮發性或非揮發性記憶體媒體,以及可經由傳輸媒體或信號(諸如,電信號、電磁信號或數位信號)存取、經由通信媒體(諸如,網路及/或無線鏈路)傳送之媒體。 通常,電腦可讀媒體130上之電路的資料結構可由程式讀取且直接或間接地用以有助於硬體包含電路。舉例而言,資料結構可在諸如Verilog或VHDL之高階設計語言(HDL)中包括硬體功能性之一或多個行為級描述或暫存器轉移級(RTL)描述。描述可由合成工具讀取,合成工具可合成描述以產生包含來自合成程式庫之閘的清單之一或多個接線對照表。接線對照表包含亦表示包含電路之硬體之功能性的一組閘。接線對照表接著可經置放及路由以產生描述待應用於遮罩之幾何形狀的一或多個資料集。遮罩接著可用於各種半導體製造步驟中以產生對應於電路之一或多個半導體電路。或者,電腦可讀媒體130上之資料結構可在需要時為接線對照表(具有或不具有合成程式庫)或資料集。在又一替代方案中,資料結構可包含示意性程式之輸出,或自該輸出導出之接線對照表或資料集。 雖然電腦可讀媒體130包括IC 10之表示,但其他實施例可包括IC 10之任何部分或部分的組合(例如,同調性開關12、多工器14、處理器複合體22、NRT區塊26、記憶體控制器30)之表示。 應強調,上文所描述之實施例僅為實施之非限制實例。對於熟習此項技術者而言,一旦已完全瞭解以上揭示內容,眾多變化及修改便將變得顯而易見。希望將以下申請專利範圍解釋為涵蓋所有此等變化及修改。 10‧‧‧積體電路(IC) 12‧‧‧同調性開關 14‧‧‧多工器 15‧‧‧直接記憶體存取(DMA)控制器 16‧‧‧I/O器件 18‧‧‧I/O器件 20‧‧‧I/O器件 22‧‧‧處理器複合體 24‧‧‧進階同調性埠(ACP) 26‧‧‧非即時(NRT)區塊 30‧‧‧記憶體控制器 32‧‧‧埠 34‧‧‧埠 36‧‧‧埠 38‧‧‧記憶體實體介面電路(PHY) 40‧‧‧記憶體實體介面電路(PHY) 50‧‧‧組態單元 52‧‧‧出埠多工器 54‧‧‧入埠多工器 56‧‧‧ACP佇列 58‧‧‧NRT佇列 60‧‧‧ACP佇列 62‧‧‧NRT佇列 64‧‧‧APB介面 72‧‧‧軟體可寫入暫存器 74‧‧‧陰影暫存器 76‧‧‧CPU 78‧‧‧CPU 80‧‧‧I/O處理器 120‧‧‧系統 122‧‧‧記憶體 124‧‧‧周邊裝置 126‧‧‧電源供應器 130‧‧‧電腦可讀媒體 圖1為說明積體電路之一部分之一實施例之方塊圖。 圖2為說明藉由同調性開關路由異動之方塊圖。 圖3為說明同調性開關之一實施例之方塊圖。 圖4為根據一或多個實施例的組態單元介面之方塊圖。 圖5為組態暫存器之陰影複本之一實施例之方塊圖。 圖6為說明用於路由異動且操作同調性開關的方法之一實施例之一般化流程圖。 圖7為說明用於更新同調性開關之組態暫存器的方法之一實施例之一般化流程圖。 圖8為系統之一實施例之方塊圖。 圖9為說明電腦可讀媒體之一實施例之方塊圖。 12‧‧‧同調性開關 14‧‧‧多工器 22‧‧‧處理器複合體 26‧‧‧非即時(NRT)區塊
权利要求:
Claims (24) [1] 一種裝置,其包含:一記憶體控制器,其包含複數個埠;一處理器複合體,其耦接至該複數個埠中之一第一埠;一或多個輸入/輸出(I/O)器件;及一同調性開關,其經耦接以自該一或多個I/O器件接收異動;其中該同調性開關經組態以:回應於判定該異動為一同調異動而將一接收之異動路由至該處理器複合體;及回應於判定該接收之異動為一非同調異動而將該接收之異動路由至該記憶體控制器之該複數個埠中的一第二埠。 [2] 如請求項1之裝置,其中該同調性開關經組態以基於對應於該接收之異動之一識別符判定該接收之異動是否為一同調異動。 [3] 如請求項1之裝置,其中該處理器複合體經組態以經由一同調性埠自該同調性開關接收同調異動,且其中該處理器複合體經組態以同調地執行同調異動快取。 [4] 如請求項1之裝置,其中該同調性開關經由一多工器耦接至該複數個I/O器件。 [5] 如請求項1之裝置,其中該記憶體控制器經組態以:在該第一埠上接收即時記憶體請求;及在該第二埠上接收非即時記憶體請求。 [6] 如請求項5之裝置,其中該記憶體控制器經組態以同時在該複數個埠中之每一埠上接收異動。 [7] 如請求項1之裝置,其中該處理器複合體包含一或多個快取記憶體,且其中該處理器複合體經組態以窺探經由該同調性埠接收之異動。 [8] 一種裝置,其包含:一同調性開關;一處理器複合體,其包含一或多個處理器;一記憶體控制器,其耦接至該處理器複合體且耦接至該同調性開關;及複數個I/O器件;其中該同調性開關經組態以:自該複數個I/O器件接收複數個異動;至少部分基於儲存於一組態暫存器之一陰影複本中的一值選擇一第一路徑或一第二路徑以用於路由一接收之異動;及回應於偵測到對該組態暫存器之一更新而更新該組態暫存器之該陰影複本。 [9] 如請求項8之裝置,其中該第一路徑穿過該處理器複合體至該記憶體控制器之一第一埠,且其中該第二路徑繞過該處理器複合體。 [10] 如請求項8之裝置,其中該組態暫存器為軟體可寫入的,且其中來自該處理器複合體之一給定處理器經組態以更新該組態暫存器。 [11] 如請求項8之裝置,其中該組態暫存器為軟體可寫入的,且其中該裝置進一步包含位置在該處理器複合體外部之一I/O處理器,該I/O處理器經組態以更新該組態暫存器。 [12] 如請求項8之裝置,其中該裝置進一步包含一多工器,且其中該同調性開關進一步經組態以:在兩個單獨埠上接收傳回資料;混合來自該兩個單獨埠之該接收之資料;及在一單一路徑上將該經混合之資料傳送至該多工器。 [13] 如請求項12之裝置,其中該多工器耦接至該複數個I/O器件。 [14] 如請求項8之裝置,其中該值為一單一位元。 [15] 如請求項8之裝置,其中伴隨該異動之該識別符經用作至該組態暫存器之該陰影複本的一索引以存取一各別值。 [16] 一種方法,其包含:在一同調性開關處接收一第一異動及一第二異動,其中一第一識別符伴隨該第一異動,且其中一第二識別符伴隨該第二異動;使用該第一識別符存取一組態暫存器中之一第一路由指示符,且使用該第二識別符存取該組態暫存器中之一第二路由指示符;回應於該第一路由指示符具有一第一值,在一第一路徑上路由該第一異動;及回應於該第二路由指示符具有一第二值,在一第二路徑上路由該第二異動,其中該第二值不同於該第一值。 [17] 如請求項16之方法,其中該第一路徑穿過一處理器複合體至一記憶體控制器之一第一埠,且其中該第二路徑耦接至該記憶體控制器之一第二埠,而不穿過該處理器複合體。 [18] 如請求項16之方法,其中該第一值指示該第一異動為一同調異動,且其中該第二值指示該第二異動為一非同調異動。 [19] 如請求項16之方法,其進一步包含:偵測對該組態暫存器之一軟體可寫入複本的一更新;及基於對該組態暫存器之該軟體可寫入複本的該更新來更新該組態暫存器之一陰影複本。 [20] 如請求項19之方法,其中藉由比較該組態暫存器之該軟體可寫入複本與該組態暫存器之該陰影複本來偵測對該組態暫存器之該軟體可寫入複本的一更新。 [21] 一種系統,其包含:一處理器複合體,其包含一或多個處理器;一同調性開關,其耦接至該處理器複合體;一多工器,其耦接至該同調性開關;複數個I/O器件,其耦接至該多工器;一記憶體控制器,其包含複數個埠,其中該記憶體控制器耦接至該處理器複合體且耦接至該同調性開關;及一記憶體,其耦接至該記憶體控制器;其中該同調性開關經組態以:經由該多工器自該複數個I/O器件接收複數個異動;針對每一異動,判定該異動為一同調異動或是一非同調異動;回應於判定一接收之異動為一同調異動,將該接收之異動轉遞至該處理器複合體;及回應於判定一接收之異動為一非同調異動,將該接收之異動轉遞至該記憶體控制器。 [22] 如請求項21之系統,其中該同調性開關進一步經組態以:監視許多未處理寫入異動;偵測對一組態暫存器之一擱置中更新,其中該組態暫存器判定針對每一異動之一路由路徑;停止自該複數個I/O器件接受新的異動;回應於判定已路由所有未處理寫入異動:實施對該組態暫存器之該擱置中更新;及自該複數個I/O器件接受新的異動。 [23] 如請求項22之系統,其中對該組態暫存器之該擱置中更新僅適用於該複數個I/O器件之一第一部分,其中該複數個I/O器件之一第二部分未受對該組態暫存器之該擱置中更新影響,且其中回應於偵測到對該組態暫存器之該擱置中更新,該同調性開關經組態以:停止自該複數個I/O器件之該第一部分接受新的異動;及自該複數個I/O器件之該第二部分接受新的異動。 [24] 如請求項22之系統,其中該同調性開關進一步經組態以:監視許多未處理同調寫入異動;及監視許多未處理非同調寫入異動。
类似技术:
公开号 | 公开日 | 专利标题 TWI494942B|2015-08-01|用於i/o流量的同調性開關 US9280471B2|2016-03-08|Mechanism for sharing private caches in a SoC US9229896B2|2016-01-05|Systems and methods for maintaining an order of read and write transactions in a computing system US8751746B2|2014-06-10|QoS management in the L2 cache US8904073B2|2014-12-02|Coherence processing with error checking US9053058B2|2015-06-09|QoS inband upgrade US9229866B2|2016-01-05|Delaying cache data array updates US9524261B2|2016-12-20|Credit lookahead mechanism US8607022B2|2013-12-10|Processing quality-of-service | information of memory transactions EP2788882A1|2014-10-15|Auto-ordering of strongly ordered, device, and exclusive transactions across multiple memory regions US9465740B2|2016-10-11|Coherence processing with pre-kill mechanism to avoid duplicated transaction identifiers US8719506B2|2014-05-06|Push mechanism for quality of service | support in coherency port US20150067246A1|2015-03-05|Coherence processing employing black box duplicate tags US8867533B2|2014-10-21|Multi-tier switch interface unit arbiter US10877888B2|2020-12-29|Systems and methods for providing distributed global ordering US9454482B2|2016-09-27|Duplicate tag structure employing single-port tag RAM and dual-port state RAM US10127153B1|2018-11-13|Cache dependency handling US10678691B2|2020-06-09|Coherence flows for dual-processing pipelines US11138111B2|2021-10-05|Parallel coherence and memory cache processing pipelines US11016913B1|2021-05-25|Inter cluster snoop latency reduction US11030102B2|2021-06-08|Reducing memory cache control command hops on a fabric JP6049564B2|2016-12-21|データトレース回路、集積回路およびデータトレース方法 WO2021046203A1|2021-03-11|Unified address translation
同族专利:
公开号 | 公开日 EP2568389A3|2013-04-17| US20130061003A1|2013-03-07| KR101405751B1|2014-06-10| CN103049406B|2016-04-06| TWI494942B|2015-08-01| EP2568389B1|2015-12-30| CN103049406A|2013-04-17| US9176913B2|2015-11-03| KR20130027446A|2013-03-15| WO2013036639A1|2013-03-14| EP2568389A2|2013-03-13|
引用文献:
公开号 | 申请日 | 公开日 | 申请人 | 专利标题 TWI660273B|2013-11-21|2019-05-21|微軟技術授權有限責任公司|在基於amba之裝置中對ioapic中斷進行支援的計算系統及方法|US4897833A|1987-10-16|1990-01-30|Digital Equipment Corporation|Hierarchical arbitration system| US5584017A|1991-12-19|1996-12-10|Intel Corporation|Cache control which inhibits snoop cycles if processor accessing memory is the only processor allowed to cache the memory location| US5392434A|1993-09-03|1995-02-21|Motorola, Inc.|Arbitration protocol system granting use of a shared resource to one of a plurality of resource users| DE69633166T2|1995-05-26|2005-08-18|National Semiconductor Corp., Santa Clara|Integrierter schaltkreis mit mehreren funktionen und gemeinsamer verwendung mehrerer interner signalbusse zur verteilung der steuerung des buszugriffes und der arbitration| EP0752666A3|1995-07-06|2004-04-28|Sun Microsystems, Inc.|Method and apparatus for fast-forwarding slave requests in a packet-switched computer system| US6275888B1|1997-11-19|2001-08-14|Micron Technology, Inc.|Method for configuring peer-to-peer bus bridges in a computer system using shadow configuration registers| JP3071752B2|1998-03-24|2000-07-31|三菱電機株式会社|ブリッジ方法、バスブリッジ及びマルチプロセッサシステム| US6434649B1|1998-10-14|2002-08-13|Hitachi, Ltd.|Data streamer| US6601151B1|1999-02-08|2003-07-29|Sun Microsystems, Inc.|Apparatus and method for handling memory access requests in a data processing system| US6751698B1|1999-09-29|2004-06-15|Silicon Graphics, Inc.|Multiprocessor node controller circuit and method| US6529968B1|1999-12-21|2003-03-04|Intel Corporation|DMA controller and coherency-tracking unit for efficient data transfers between coherent and non-coherent memory spaces| US20010037435A1|2000-05-31|2001-11-01|Van Doren Stephen R.|Distributed address mapping and routing table mechanism that supports flexible configuration and partitioning in a modular switch-based, shared-memory multiprocessor computer system| US7028115B1|2000-10-06|2006-04-11|Broadcom Corporation|Source triggered transaction blocking| US6615319B2|2000-12-29|2003-09-02|Intel Corporation|Distributed mechanism for resolving cache coherence conflicts in a multi-node computer architecture| US6832279B1|2001-05-17|2004-12-14|Cisco Systems, Inc.|Apparatus and technique for maintaining order among requests directed to a same address on an external bus of an intermediate network node| US6829665B2|2001-09-28|2004-12-07|Hewlett-Packard Development Company, L.P.|Next snoop predictor in a host controller| EP1308862B1|2001-10-29|2009-07-15|Telefonaktiebolaget LM Ericsson |Optimization of the design of a synchronous digital circuit| US6748479B2|2001-11-20|2004-06-08|Broadcom Corporation|System having interfaces and switch that separates coherent and packet traffic| US6836813B1|2001-11-30|2004-12-28|Advanced Micro Devices, Inc.|Switching I/O node for connection in a multiprocessor computer system| US6912612B2|2002-02-25|2005-06-28|Intel Corporation|Shared bypass bus structure| US6959364B2|2002-06-28|2005-10-25|Intel Corporation|Partially inclusive snoop filter| US7093256B2|2002-12-13|2006-08-15|Equator Technologies, Inc.|Method and apparatus for scheduling real-time and non-real-time access to a shared resource| US7093079B2|2002-12-17|2006-08-15|Intel Corporation|Snoop filter bypass| US7617329B2|2002-12-30|2009-11-10|Intel Corporation|Programmable protocol to support coherent and non-coherent transactions in a multinode system| US7539199B2|2003-02-21|2009-05-26|Gireesh Shrimali|Switch fabric scheduling with fairness and priority consideration| GB0315504D0|2003-07-02|2003-08-06|Advanced Risc Mach Ltd|Coherent multi-processing system| US20060064563A1|2004-09-23|2006-03-23|Hobson Louis B|Caching presence detection data| US7360008B2|2004-12-30|2008-04-15|Intel Corporation|Enforcing global ordering through a caching bridge in a multicore multiprocessor system| US8254411B2|2005-02-10|2012-08-28|International Business Machines Corporation|Data processing system, method and interconnect fabric having a flow governor| US7461190B2|2005-08-11|2008-12-02|P.A. Semi, Inc.|Non-blocking address switch with shallow per agent queues| US20070165596A1|2006-01-18|2007-07-19|Boyd William T|Creation and management of routing table for PCI bus address based routing with integrated DID| US7694025B1|2006-03-31|2010-04-06|Integrated Device Technology, Inc.|Method and device for base address sorting and entry into base address registers| US7480770B2|2006-06-14|2009-01-20|Sun Microsystems, Inc.|Semi-blocking deterministic directory coherence| GB2442984B|2006-10-17|2011-04-06|Advanced Risc Mach Ltd|Handling of write access requests to shared memory in a data processing apparatus| US7757073B2|2006-10-25|2010-07-13|Nvidia Corporation|System configuration data sharing between multiple integrated circuits| US7734857B2|2007-07-31|2010-06-08|Intel Corporation|Cache coherent switch device| US20090307408A1|2008-06-09|2009-12-10|Rowan Nigel Naylor|Peer-to-Peer Embedded System Communication Method and Apparatus| US8185695B2|2008-06-30|2012-05-22|Advanced Micro Devices, Inc.|Snoop filtering mechanism| US8266389B2|2009-04-29|2012-09-11|Advanced Micro Devices, Inc.|Hierarchical memory arbitration technique for disparate sources| US8234489B2|2009-07-15|2012-07-31|Arm Limited|Set of system configuration registers having shadow register| US8615637B2|2009-09-10|2013-12-24|Advanced Micro Devices, Inc.|Systems and methods for processing memory requests in a multi-processor system using a probe engine|US10057775B2|2009-01-28|2018-08-21|Headwater Research Llc|Virtualized policy and charging system| US9858559B2|2009-01-28|2018-01-02|Headwater Research Llc|Network service plan design| US9955332B2|2009-01-28|2018-04-24|Headwater Research Llc|Method for child wireless device activation to subscriber account of a master wireless device| US9647918B2|2009-01-28|2017-05-09|Headwater Research Llc|Mobile device and method attributing media services network usage to requesting application| US10492102B2|2009-01-28|2019-11-26|Headwater Research Llc|Intermediate networking devices| US9980146B2|2009-01-28|2018-05-22|Headwater Research Llc|Communications device with secure data path processing agents| US10841839B2|2009-01-28|2020-11-17|Headwater Research Llc|Security, fraud detection, and fraud mitigation in device-assisted services systems| US9578182B2|2009-01-28|2017-02-21|Headwater Partners I Llc|Mobile device and service management| US9755842B2|2009-01-28|2017-09-05|Headwater Research Llc|Managing service user discovery and service launch object placement on a device| US9571559B2|2009-01-28|2017-02-14|Headwater Partners I Llc|Enhanced curfew and protection associated with a device group| US8793758B2|2009-01-28|2014-07-29|Headwater Partners I Llc|Security, fraud detection, and fraud mitigation in device-assisted services systems| US8745191B2|2009-01-28|2014-06-03|Headwater Partners I Llc|System and method for providing user notifications| US11218854B2|2009-01-28|2022-01-04|Headwater Research Llc|Service plan design, user interfaces, application programming interfaces, and device management| US9557889B2|2009-01-28|2017-01-31|Headwater Partners I Llc|Service plan design, user interfaces, application programming interfaces, and device management| US9565707B2|2009-01-28|2017-02-07|Headwater Partners I Llc|Wireless end-user device with wireless data attribution to multiple personas| US9351193B2|2009-01-28|2016-05-24|Headwater Partners I Llc|Intermediate networking devices| US9270559B2|2009-01-28|2016-02-23|Headwater Partners I Llc|Service policy implementation for an end-user device having a control application or a proxy agent for routing an application traffic flow| US9572019B2|2009-01-28|2017-02-14|Headwater Partners LLC|Service selection set published to device agent with on-device service selection| US10064055B2|2009-01-28|2018-08-28|Headwater Research Llc|Security, fraud detection, and fraud mitigation in device-assisted services systems| US10248996B2|2009-01-28|2019-04-02|Headwater Research Llc|Method for operating a wireless end-user device mobile payment agent| US10264138B2|2009-01-28|2019-04-16|Headwater Research Llc|Mobile device and service management| US8589541B2|2009-01-28|2013-11-19|Headwater Partners I Llc|Device-assisted services for protecting network capacity| US9392462B2|2009-01-28|2016-07-12|Headwater Partners I Llc|Mobile end-user device with agent limiting wireless data communication for specified background applications based on a stored policy| US10783581B2|2009-01-28|2020-09-22|Headwater Research Llc|Wireless end-user device providing ambient or sponsored services| US10715342B2|2009-01-28|2020-07-14|Headwater Research Llc|Managing service user discovery and service launch object placement on a device| US10237757B2|2009-01-28|2019-03-19|Headwater Research Llc|System and method for wireless network offloading| US9954975B2|2009-01-28|2018-04-24|Headwater Research Llc|Enhanced curfew and protection associated with a device group| US9706061B2|2009-01-28|2017-07-11|Headwater Partners I Llc|Service design center for device assisted services| US8626115B2|2009-01-28|2014-01-07|Headwater Partners I Llc|Wireless network service interfaces| US10200541B2|2009-01-28|2019-02-05|Headwater Research Llc|Wireless end-user device with divided user space/kernel space traffic policy system| US8832777B2|2009-03-02|2014-09-09|Headwater Partners I Llc|Adapting network policies based on device service processor configuration| US8799451B2|2009-01-28|2014-08-05|Headwater Partners I Llc|Verifiable service policy implementation for intermediate networking devices| US9225665B2|2012-09-25|2015-12-29|Qualcomm Technologies, Inc.|Network on a chip socket protocol| WO2014159862A1|2013-03-14|2014-10-02|Headwater Partners I Llc|Automated credential porting for mobile devices| US9712949B2|2013-06-07|2017-07-18|Strata Products Worldwide, Llc|Method and apparatus for protecting a miner| GB2519350A|2013-10-18|2015-04-22|St Microelectronics Grenoble 2|Method and apparatus for supporting reprogramming or reconfiguring| CN103744808B|2013-12-31|2017-12-26|百度在线网络技术(北京)有限公司|一种用于控制i/o请求的方法与设备| US9804979B2|2014-12-29|2017-10-31|Sandisk Technologies Llc|Ring bus architecture for use in a memory module| US10268618B2|2015-04-16|2019-04-23|Advanced Micro Devices, Inc.|Chip level switching for multiple computing device interfaces| CN106527961B|2015-09-15|2019-06-21|伊姆西公司|用于保证数据一致性的方法和装置| US11030126B2|2017-07-14|2021-06-08|Intel Corporation|Techniques for managing access to hardware accelerator memory| US20210191879A1|2019-12-20|2021-06-24|Advanced Micro Devices, Inc.|Arbitration scheme for coherent and non-coherent memory requests|
法律状态:
优先权:
[返回顶部]
申请号 | 申请日 | 专利标题 US13/226,718|US9176913B2|2011-09-07|2011-09-07|Coherence switch for I/O traffic| 相关专利
Sulfonates, polymers, resist compositions and patterning process
Washing machine
Washing machine
Device for fixture finishing and tension adjusting of membrane
Structure for Equipping Band in a Plane Cathode Ray Tube
Process for preparation of 7 alpha-carboxyl 9, 11-epoxy steroids and intermediates useful therein an
国家/地区
|